window.onload = function () {


    // 只要使用layui的模块，必须加载模块
    var form = layui.form;
    // 需求1:定义校验规则,使用的是form.verify()
    // 只需要在表单元素上加上 lay-verify="required|pwd"
    form.verify({//属性是规则名称,值是具体的规则
        //规则1:两种校验规则
        pwd: [
            /^[\S]{6,12}$/,
            '密码必须6到12位，且不能出现空格'
        ],
        //规则2:新密码-不能和旧密码一样
        newPwd: function (value) {
            // 获取 原密码的值
            let v1 = document.querySelector('[name="oldPwd"]').value
            //报错信息条件:和旧密码值一样
            if (value == v1) {
                return '新密码不能和原密码一致'
            }
        },
        //规则3:确认新密码-必须和新密码一致
        repwd: function (value) {
            //获取输入的新密码的值
            let v2 = document.querySelector('[name ="newPwd"]').value
            //报错信息条件:和旧密码值一样
            if (value !== v2) {
                return '两次输入的密码不一致'
            }
        },
    })

    // 需求2:注册表单的提交事件 修改密码
    document.querySelector('#formPwd').onsubmit = function (e) {
        // 阻止默认跳转
        e.preventDefault()
        // 发送ajax请求
        axios({
            url: '/my/updatepwd',
            method: 'POST',
            data: $(this).serialize()
        }).then(({ data: res }) => {

            if (res.status !== 0) {
                //判断业务状态码失败 弹出失败信息
                return layui.layer.msg(res.message)
            }
            //成功 提示信息
            layui.layer.msg('恭喜您,修改密码成功!')
            // 重置表单
            this.reset()

            // 这里也有一种业务场景，修改密码后，要退出重新登录
            localStorage.removeItem('token');
            setTimeout(() => {
                window.parent.location.href = '/login.html'
            }, 2000);
        });
    }
}